package com.example.demo.tool;

import java.util.ArrayList;
import java.util.List;

import org.apache.poi.ss.formula.functions.T;
import org.springframework.stereotype.Component;

import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.JsonArray;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import com.google.gson.reflect.TypeToken;

@Component
public class GsonUtil {
	public static String object2Json(Object object) {
		Gson gson = new Gson();
		return gson.toJson(object);
	}
 
	public static <T> T json2Object(String json, Class<T> clazz) {
		Gson gson = new Gson();
		return gson.fromJson(json, clazz);
	}

//	 public static <T> List<T> jsonToDto(String message, String jsonHead,T t){//这里是用的T
//	        JsonObject jsonObject = new JsonParser().parse(message).getAsJsonObject();
//	        JsonArray jsonArray = jsonObject.getAsJsonArray(jsonHead);
//	        GsonBuilder gsonBuilder = new GsonBuilder(); gsonBuilder.serializeNulls();
//	        Gson gson = gsonBuilder.create();
//	        List<T> list = new ArrayList<>();
//	        for (JsonElement jsonElement : jsonArray) {
//	            t = gson.fromJson(jsonElement,new TypeToken<T>(){}.getType()); // TypeToken
//	            list.add(t);
//	        }
//	        return list;
//	    }

}
